package com.eibus.applicationconnector.twitter;
import com.eibus.connector.nom.Connector;
import com.eibus.xml.nom.Document;
import com.cordys.coe.util.XMLProperties;

/**
 * Interface for accessing information about the incoming SOAP request and setting the SOAP
 * response.
 *
 * @author  mpoyhone
 */
public interface ISoapRequestContext
{
    /**
     * DOCUMENTME.
     *
     * @param   elemName  DOCUMENTME
     *
     * @return  DOCUMENTME
     */
    public int addResponseElement(String elemName);

    /**
     * DOCUMENTME.
     *
     * @param   node  DOCUMENTME
     *
     * @return  DOCUMENTME
     */
    public int addResponseElement(int node);

    /**
     * DOCUMENTME.
     *
     * @param   elemName   DOCUMENTME
     * @param   elemValue  DOCUMENTME
     *
     * @return  DOCUMENTME
     */
    public int addResponseElement(String elemName, String elemValue);

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public int getMethodImplementation();

   

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public Document getNomDocument();

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     *
     * @throws  GeneralException  DOCUMENTME
     */
    public XMLProperties getRequestAsXmlProperties()
                                            throws Exception;

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public String getRequestOrganizationDn();

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public int getRequestRootNode();

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public String getRequestUserDn();

    /**
     * DOCUMENTME.
     *
     * @return  DOCUMENTME
     */
    public int getResponseRootNode();
}